import java.util.Arrays;

public class Leetcode {
}

//leetcode:455:分发饼干
class Solution {
    public int findContentChildren(int[] g, int[] s) {
        //排序
        Arrays.sort(g);
        Arrays.sort(s);
        int ret = 0 ,m = g.length , n = s.length;
        //遍历两个数组
        for(int i = 0 , j = 0; i < m  && j < n; i++ , j++){
            //如果胃口大于此时的饼干就去找下一一块饼干
            while( j < n && g[i] > s[j]) j++;
            //如果此时还要饼干，就记录满足孩子的数量
            if(j < n) ret++;
        }
        return ret;
    }
}


//leetcode:553:最优除法
class Solution2 {
    public String optimalDivision(int[] nums) {
        int n = nums.length;
        StringBuffer ret = new StringBuffer();
        //如果只有一个数就是这个数本身
        if(n == 1){
            return ret.append(nums[0]).toString();
        }
        //如果有两个数就是这两个数相除
        if(n == 2){
            return ret.append(nums[0]).append("/").append(nums[1]).toString();
        }
        //如果大于两个数，就让第一个数去除以后面所有数相除后的结果此时的结果就是最大值
        ret.append(nums[0]).append("/(").append(nums[1]);
        for(int i = 2; i < n; i++){
            ret.append("/").append(nums[i]);
        }
        ret.append(")");
        return ret.toString();
    }
}